package com.ruoyi.project.module.response.service;

import com.ruoyi.project.module.response.domain.Response;
import com.ruoyi.project.module.response.domain.ResponseFiliation;
import com.ruoyi.project.module.response.domain.ResponseParam;

import java.lang.reflect.InvocationTargetException;
import java.util.List;

public interface IResponseParamService {

    /**
     *
     * @Description TODO: 根据接口ID获取返回值
     * @Author Rick
     * @Param: apiConnectorId 项目ID
     * @Return List<ResponseParam> 接口返回值
     * @Date 2018/10/15 10:35
     */
    List<ResponseParam> getList(Long apiProjectId);

    /**
      *
      * @Description TODO: 添加返回参数
      * @Author Rick
      * @Date 2018/10/16 9:32
      */
    int addResponseParam(String json,Long apiProjectId,boolean ignorePageInfo);

    /**
      *
      * @Description TODO: 添加返回参数
      * @Author Rick
      * @Param: response 接口返回参数
      * @Date 2018/10/16 18:02
      */
    int addNewLine(Response response);

    /**
     *
     * @Description TODO: 修改返回参数
     * @Author Rick
     * @Date 2018/10/16 11:11
     */
    int modifyResponse(Object value, String modifyField, Long responseId) throws Exception;

    /**
     *
     * @Description TODO: 删除返回参数
     * @Author Rick
     * @Param: responseCode 编号
     * @Date 2018/10/16 11:11
     */
    int delResponse(String responseCode);

    /**
     *
     * @Description TODO: 添加层级关系
     * @Author Rick
     * @Param: responseFiliation 层级关系
     * @Return
     * @Date 2018/10/16 18:43
     */
    int addFiliation(ResponseFiliation responseFiliation);
    
    /**
      *
      * @Description TODO: 删除项目所有返回值
      * @Author Rick
      * @Param: projectId 接口ID
      * @Return 
      * @Date 2018/10/16 20:10 
      */ 
    int cleanResponse(Long projectId);
}


